<?php

/**
 * Administrators form.
 *
 * @package    jobeet
 * @subpackage form
 * @author     Your name here
 */
class AdministratorsForm extends BaseAdministratorsForm
{
  public function configure()
  {
        $this->widgetSchema['password'] = new sfWidgetFormInputPassword();
        $this->validatorSchema['password'] = new sfValidatorRegex( 
                                                                array( 
                                                                    'required'      => false, 
                                                                    'pattern'       => '/^[A-Za-zА-Яa-я0-9-_]+$/', 
                                                                    'min_length'    => 6, 
                                                                    'max_length'    => 32), 
                                                                array(
                                                                    'required'      => 'Поле является обязательным',
                                                                    'min_length'    => 'Пароль слишком короткий, минимум %min_length% символов',
                                                                    'max_length'    => 'Пароль слишком длинный, максимум %max_length% символа',
                                                                    'invalid'       => 'Пароль содержит недопустимые символы',
                                                                    ));
        
        // Поле подтверждения пароля                                                        
        $this->widgetSchema['password_c'] = new sfWidgetFormInputPassword();
        $this->validatorSchema['password_c'] = new sfValidatorString( array( 'required' => false ) );
        
        // Сравнение введенных паролей
        $this->mergePreValidator( 
            new sfValidatorSchemaCompare('password_c', sfValidatorSchemaCompare::IDENTICAL, 'password', array(), array( 
                'invalid'=>'Введенные пароли отличаются'
        )));
  }
}
